package almacenes.modelo.entidad;
// Generated 16/02/2012 04:45:02 PM by Hibernate Tools 3.4.0.CR1


import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;

/**
 * Diferencia generated by hbm2java
 */
@Entity
@Table(name="DIFERENCIA"
    , uniqueConstraints = {@UniqueConstraint(columnNames="ID_INSPECCION"), @UniqueConstraint(columnNames="COD_DIFERENCIA_BBVA")} 
)
public class Diferencia  implements java.io.Serializable {


     private int idDiferencia;
     private Inspeccion inspeccion;
     private String codDiferenciaBbva;
     private Byte idEstadoDif;
     private String usuReg;
     private Date fecReg;
     private String usuAct;
     private Date fecAct;
     private Set<DiferenciaDetalle> diferenciaDetalles = new HashSet(0);
     private Set<DiferenciasCarta> diferenciasCartas = new HashSet(0);

    public Diferencia() {
    }

	
    public Diferencia(int idDiferencia, Inspeccion inspeccion) {
        this.idDiferencia = idDiferencia;
        this.inspeccion = inspeccion;
    }
    public Diferencia(int idDiferencia, Inspeccion inspeccion, String codDiferenciaBbva, Byte idEstadoDif, String usuReg, Date fecReg, String usuAct, Date fecAct, Set<DiferenciaDetalle> diferenciaDetalles, Set<DiferenciasCarta> diferenciasCartas) {
       this.idDiferencia = idDiferencia;
       this.inspeccion = inspeccion;
       this.codDiferenciaBbva = codDiferenciaBbva;
       this.idEstadoDif = idEstadoDif;
       this.usuReg = usuReg;
       this.fecReg = fecReg;
       this.usuAct = usuAct;
       this.fecAct = fecAct;
       this.diferenciaDetalles = diferenciaDetalles;
       this.diferenciasCartas = diferenciasCartas;
    }
   
     @Id 

    
    @Column(name="ID_DIFERENCIA", unique=true, nullable=false, precision=7, scale=0)
    public int getIdDiferencia() {
        return this.idDiferencia;
    }
    
    public void setIdDiferencia(int idDiferencia) {
        this.idDiferencia = idDiferencia;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="ID_INSPECCION", unique=true, nullable=false)
    public Inspeccion getInspeccion() {
        return this.inspeccion;
    }
    
    public void setInspeccion(Inspeccion inspeccion) {
        this.inspeccion = inspeccion;
    }

    
    @Column(name="COD_DIFERENCIA_BBVA", unique=true, length=10)
    public String getCodDiferenciaBbva() {
        return this.codDiferenciaBbva;
    }
    
    public void setCodDiferenciaBbva(String codDiferenciaBbva) {
        this.codDiferenciaBbva = codDiferenciaBbva;
    }

    
    @Column(name="ID_ESTADO_DIF", precision=2, scale=0)
    public Byte getIdEstadoDif() {
        return this.idEstadoDif;
    }
    
    public void setIdEstadoDif(Byte idEstadoDif) {
        this.idEstadoDif = idEstadoDif;
    }

    
    @Column(name="USU_REG", length=10)
    public String getUsuReg() {
        return this.usuReg;
    }
    
    public void setUsuReg(String usuReg) {
        this.usuReg = usuReg;
    }

    @Temporal(TemporalType.DATE)
    @Column(name="FEC_REG", length=7)
    public Date getFecReg() {
        return this.fecReg;
    }
    
    public void setFecReg(Date fecReg) {
        this.fecReg = fecReg;
    }

    
    @Column(name="USU_ACT", length=10)
    public String getUsuAct() {
        return this.usuAct;
    }
    
    public void setUsuAct(String usuAct) {
        this.usuAct = usuAct;
    }

    @Temporal(TemporalType.DATE)
    @Column(name="FEC_ACT", length=7)
    public Date getFecAct() {
        return this.fecAct;
    }
    
    public void setFecAct(Date fecAct) {
        this.fecAct = fecAct;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="diferencia")
    public Set<DiferenciaDetalle> getDiferenciaDetalles() {
        return this.diferenciaDetalles;
    }
    
    public void setDiferenciaDetalles(Set<DiferenciaDetalle> diferenciaDetalles) {
        this.diferenciaDetalles = diferenciaDetalles;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="diferencia")
    public Set<DiferenciasCarta> getDiferenciasCartas() {
        return this.diferenciasCartas;
    }
    
    public void setDiferenciasCartas(Set<DiferenciasCarta> diferenciasCartas) {
        this.diferenciasCartas = diferenciasCartas;
    }




}


